﻿namespace Headsight.BPMN2WF.BPMN.Model
{
    /// <summary>
    /// <i>Parameter class/object</i> for the <see cref="BPMN.BPMNFlowNodesBlockFactory"/>.
    /// </summary>
    public class BPMNProcessFactoryParams
    {
        /// <summary>
        /// Constructor :-).
        /// </summary>
        public BPMNProcessFactoryParams(BPMNSequenceFlowFactory bpmnModelFactoryBpmnSequenceFlow, BPMNFlowNodeFactory bpmnModelFactoryBPMNFlowNode, BPMNArgumentFactory bpmnModelFactory)
        {
            BpmnModelFactoryBpmnSequenceFlow = bpmnModelFactoryBpmnSequenceFlow;
            BpmnModelFactoryBpmnFlowNode = bpmnModelFactoryBPMNFlowNode;
            BpmnModelFactory = bpmnModelFactory;
        }

        /// <summary>
        /// The <see cref="BpmnModelFactoryBpmnSequenceFlow"/>.
        /// </summary>
        public BPMNSequenceFlowFactory BpmnModelFactoryBpmnSequenceFlow { get; set; }

        /// <summary>
        /// The <see cref="BPMNFlowNodeFactory"/>.
        /// </summary>

        public BPMNFlowNodeFactory BpmnModelFactoryBpmnFlowNode { get; set; }

        /// <summary>
        /// The <see cref="BPMNArgumentFactory"/>.
        /// </summary>

        public BPMNArgumentFactory BpmnModelFactory { get; set; }
    }
}